package com.ruoyi.activiti.domain.dto;

import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.core.domain.BaseEntity;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;

import java.util.Date;

/**
 * 审批轨迹对象 workflow_trajectory
 *
 * @author ruoyi
 * @date 2021-07-16
 */
public class WorkflowTrajectory extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 审批轨迹id */
    private Integer id;

    /** 审批信息ID */
    @Excel(name = "审批信息ID")
    private String tId;

    /** 单据编号 */
    @Excel(name = "单据编号")
    private String billCode;

    private String type;

    /** 实例id */
    @Excel(name = "实例id")
    private String instanceId;

    /** 审批人Id */
    @Excel(name = "审批人Id")
    private String approvalId;

    /**
     * 审批节点名称
     */
    private String approvalNodeName;

    /** 审批结果 */
    @Excel(name = "审批结果")
    private String approvalResult;

    /** 审批信息 */
    @Excel(name = "审批信息")
    private String approvalContent;

    /**
     * 审批状态
     */
    private String approvalStatus;

    /**
     * 启动时间
     */
    private Date startTime;

    /**
     * 完成时间
     */
    private Date completeTime;

    /**
     * 候选人姓名
     */
    private String approvalName;

    /**
     * 候选人邮箱
     */
    private String approvalEmail;

    /**
     * 还是否为第一次提交
     */
    private boolean first = false;

    public void setId(Integer id)
    {
        this.id = id;
    }

    public Integer getId()
    {
        return id;
    }
    public void settId(String tId)
    {
        this.tId = tId;
    }

    public String gettId()
    {
        return tId;
    }
    public void setBillCode(String billCode)
    {
        this.billCode = billCode;
    }

    public String getBillCode()
    {
        return billCode;
    }
    public void setInstanceId(String instanceId)
    {
        this.instanceId = instanceId;
    }

    public String getInstanceId()
    {
        return instanceId;
    }
    public void setApprovalId(String approvalId)
    {
        this.approvalId = approvalId;
    }

    public String getApprovalId()
    {
        return approvalId;
    }
    public void setApprovalResult(String approvalResult)
    {
        this.approvalResult = approvalResult;
    }

    public String getApprovalResult()
    {
        return approvalResult;
    }
    public void setApprovalContent(String approvalContent)
    {
        this.approvalContent = approvalContent;
    }

    public String getApprovalContent()
    {
        return approvalContent;
    }

    public String getApprovalNodeName() {
        return approvalNodeName;
    }

    public void setApprovalNodeName(String approvalNodeName) {
        this.approvalNodeName = approvalNodeName;
    }

    public String getType() {
        return type;
    }

    public void setType(String type) {
        this.type = type;
    }

    public String getApprovalStatus() {
        return approvalStatus;
    }

    public void setApprovalStatus(String approvalStatus) {
        this.approvalStatus = approvalStatus;
    }

    public Date getStartTime() {
        return startTime;
    }

    public void setStartTime(Date startTime) {
        this.startTime = startTime;
    }

    public Date getCompleteTime() {
        return completeTime;
    }

    public void setCompleteTime(Date completeTime) {
        this.completeTime = completeTime;
    }

    public String getApprovalName() {
        return approvalName;
    }

    public void setApprovalName(String approvalName) {
        this.approvalName = approvalName;
    }

    public String getApprovalEmail() {
        return approvalEmail;
    }

    public void setApprovalEmail(String approvalEmail) {
        this.approvalEmail = approvalEmail;
    }

    public boolean isFirst() {
        return first;
    }

    public void setFirst(boolean first) {
        this.first = first;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("id", getId())
            .append("tId", gettId())
            .append("billCode", getBillCode())
            .append("instanceId", getInstanceId())
            .append("approvalId", getApprovalId())
            .append("approvalResult", getApprovalResult())
            .append("approvalContent", getApprovalContent())
            .append("createBy", getCreateBy())
            .append("createTime", getCreateTime())
            .append("remark", getRemark())
            .toString();
    }
}
